from myelin.Ns import MYELIN_ONTOLOGY as MYELIN, FOAF

from GroupAgent import GroupAgent

from ObjectTypes import \
    DomainAgentTypeO, DomainAgentTypeS, \
    GroupAgentTypeO, \
    DomainProfileTypeS
    
from mappings import \
    AgentMap, \
    PrimaryTopicMap
    
class DomainAgent(GroupAgent):
    
    ModelTypes = (DomainAgentTypeO, DomainAgentTypeS)
    
    RDF_BINDINGS = {
        'mUsers_Group'      : ((MYELIN, 'users-group'), GroupAgentTypeO, AgentMap),
        'mAdmins_Group'     : ((MYELIN, 'admins-group'), GroupAgentTypeO, AgentMap),
        'mProfile'          : ((FOAF, 'primaryTopic'), DomainProfileTypeS, PrimaryTopicMap),
    }

    
CLASS_TYPES = {
    MYELIN + 'DomainAgent' : DomainAgent,
}